package cn.zhf.shop.entity;

import cn.zhf.shop.config.IgnoreSwaggerParameter;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.beans.Transient;
import java.util.Date;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

@ApiModel(value = "cn-zhf-shop-entity-AgentAudit")
@Data
@NoArgsConstructor
public class AgentAudit {
    /**
     * 代理人审核id
     */
    @ApiModelProperty(value = "代理人审核id")
    private Integer agentAuditId;

    /**
     * 审核人id
     */
    @ApiModelProperty(value = "审核人id")
    private Integer agentAuditUserId;

    /**
     * 操作 0：删除 1：添加
     */
    @ApiModelProperty(value = "操作 0：删除 1：添加")
    private Integer agentAuditOperation;

    /**
     * 提交代理人审核状态0：未提交 1：审核中 2：通过 3：驳回
     */
    @ApiModelProperty(value = "提交代理人审核状态0：未提交 1：审核中 2：通过 3：驳回")
    private Integer auditPostStatus;

    /**
     * 提交审核人员id
     */
    @ApiModelProperty(value = "提交审核人员id")
    private Integer postUserId;

    /**
     * 提交审核时间
     */
    @ApiModelProperty(value = "提交审核时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date postTime;

    /**
     * 驳回原因
     */
    @ApiModelProperty(value = "驳回原因")
    private String rejectionReason;

    /**
     * 代理人id
     */
    @ApiModelProperty(value = "代理人id")
    private Integer userId;

    /**
     * 被审核人姓名
     */
    @ApiModelProperty(value = "被审核人姓名")
    private String username;

    /**
     * 被审核人密码
     */
    @ApiModelProperty(value = "被审核人密码")
    private String password;

    /**
     * 被审核人组群
     */
    @ApiModelProperty(value = "被审核人组群")
    private Integer userGroup;

    /**
     * 注册时间
     */
    @ApiModelProperty(value = "注册时间")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date registrationTime;

    /**
     * 管理员所属机构id 没有的话机构id为-1
     */
    @ApiModelProperty(value = "管理员所属机构id 没有的话机构id为-1")
    private Integer orgId;

    /**
     * 账户所有人
     */
    @ApiModelProperty(value = "账户所有人")
    private String realname;

    /**
     * 管理员电话
     */
    @ApiModelProperty(value = "管理员电话")
    private String userPhone;

    /**
     * 人员状态(0未分配,1已分配)
     */
    @ApiModelProperty(value = "人员状态(0未分配,1已分配)")
    private Integer state;

    /**
     * 性别 0：男 1：女
     */
    @ApiModelProperty(value = "性别 0：男 1：女")
    private Integer sex;

    /**
     * 学历
     */
    @ApiModelProperty(value = "学历")
    private String education;

    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    private String idcard;

    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱")
    private String email;

    /**
     * 开户行名称
     */
    @ApiModelProperty(value = "开户行名称")
    private String bankName;

    /**
     * 户名
     */
    @ApiModelProperty(value = "户名")
    private String accountName;

    /**
     * 账户号
     */
    @ApiModelProperty(value = "账户号")
    private String accountId;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remarks;

    /**
     * 代理人等级
     */
    @ApiModelProperty(value = "代理人等级")
    private Integer level;

    /**
     * 下属id以；隔开
     */
    @ApiModelProperty(value = "下属id以；隔开")
    private String subordinateId;

    /**
     * 代理人附件文件
     */
    @ApiModelProperty(value = "代理人附件文件")
    private String file;

    /**
     * 是否是代理人主管(0 不是代理人主管  1 是代理人主管)
     */
    @ApiModelProperty(value = "是否是代理人主管(0 不是代理人主管  1 是代理人主管)")
    private Integer agentLeader;

    @IgnoreSwaggerParameter
    private ConsoleUser consoleUser;

}